package com.hyxt.DTO;

import com.hyxt.DTO.protocols.ICase;

import java.util.List;
import java.util.Map;

public class DataHandler {
    /**
     *
     * 协议选择器
     */
    List<Map> caseList;
    public void init(List<Map> caseList){
        //选择器
        this.caseList = caseList;
    }
    public String judgeProtocol(byte[] data) {
        //遍历
        for (Map map : caseList) {
            //判断协议类型
            boolean  result = ((ICase)map.get("case")).doCase(data);
            //判断是否成功
            if(result){
                //取出协议名称
                String protocolName = (String) map.get("name");
                //返回协议名称
                return protocolName;
            }
        }
        //返回未知
        return "";
    }
}
